package com.qdu.bussiness.mapper;

import java.util.List;
import com.qdu.bussiness.domain.BusEntry;
import org.apache.ibatis.annotations.Param;

/**
 * 入库记录Mapper接口
 * 
 * @author qdu
 * @date 2022-03-05
 */
public interface BusEntryMapper 
{
    /**
     * 查询入库记录
     * 
     * @param entryId 入库记录主键
     * @return 入库记录
     */
    public BusEntry selectBusEntryByEntryId(Long entryId);

    /**
     * 查询入库记录列表
     * 
     * @param busEntry 入库记录
     * @return 入库记录集合
     */
    public List<BusEntry> selectBusEntryList(BusEntry busEntry);

    /**
     * 新增入库记录
     * 
     * @param busEntry 入库记录
     * @return 结果
     */
    public int insertBusEntry(BusEntry busEntry);

    /**
     * 修改入库记录
     * 
     * @param busEntry 入库记录
     * @return 结果
     */
    public int updateBusEntry(BusEntry busEntry);

    /**
     * 删除入库记录
     * 
     * @param entryId 入库记录主键
     * @return 结果
     */
    public int deleteBusEntryByEntryId(Long entryId);

    /**
     * 批量删除入库记录
     * 
     * @param entryIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteBusEntryByEntryIds(Long[] entryIds);

    /**
     * 校验物料编码是否存在
     * @param itemNo
     * @return
     */
    int checkItemNoExist(String itemNo);

    /**
     * 修改入库单状态
     * @param entryId
     * @param entryStauts
     * @return
     */
    int updateEntryStatus(@Param("entryId") Long entryId, @Param("entryStatus") String entryStauts);

    /**
     * 通过物料序号查询入库记录
     * @param itemNo
     * @return
     */
    BusEntry selectBusEntryByItemNo(String itemNo);
}
